package com.yunyao.dao.model;

import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Getter;
import lombok.Setter;

import java.math.BigDecimal;
import java.util.Date;

/**
 * <p>
 * 对账订单材料表
 * </p>
 *
 * @author xingjishuai
 * @since 2024-07-02
 */
@Getter
@Setter
@TableName("bamu_reconciliation_order_material")
public class BamuReconciliationOrderMaterial {

    /**
     * 主键ID
     */
    private String id;

    /**
     * 合同ID
     */
    private String contractId;

    private String purchaseApplyId;

    /**
     * 材料ID
     */
    private String materialId;

    /**
     * 材料编码
     */
    private String materialCode;

    /**
     * 材料名称
     */
    private String materialName;

    /**
     * 材料规格
     */
    private String materialSpecs;

    /**
     * 材料型号
     */
    private String materialModel;

    /**
     * 材料单位
     */
    private String materialUnit;

    /**
     * 材料品牌
     */
    private String materialBrand;

    /**
     * 材料数量
     */
    private BigDecimal materialNum;

    /**
     * 不含税单价（元）
     */
    private BigDecimal excludingTaxUnitPrice;

    /**
     * 税率（%）
     */
    private BigDecimal tax;

    /**
     * 含税单价（元）
     */
    private BigDecimal includingTaxUnitPrice;

    /**
     * 含税总价（元）
     */
    private BigDecimal includingTaxTotalPrice;

    /**
     * 创建时间
     */
    private Date createdAt;

    /**
     * 创建人
     */
    private String createdBy;

    /**
     * 创建部门
     */
    private String createDept;

    /**
     * 修改时间
     */
    private Date updatedAt;

    /**
     * 修改人
     */
    private String updatedBy;

    /**
     * 业务状态 1:正常
     */
    @TableField("`status`")
    private Integer status;

    private String attachFiles;

    private String orderDesc;

    /**
     * 数据删除状态0:未删除,1:删除
     */
    private Integer isDeleted;

    /**
     * 租户ID
     */
    @TableField(value = "tenant_id", fill = FieldFill.INSERT)
    private String tenantId;

    private BigDecimal contractCount;

    private BigDecimal orderCount;

    private String taxClassCode;

    private String taxClassName;

    /**
     * 对账单主键ID
     */
    private String reconciliationId;

    /**
     * 对账单订单主键ID
     */
    private String reconciliationOrderId;

    /**
     * 对账单订单编号
     */
    private String reconciliationOrderSn;

    /**
     * 材料备注
     */
    private String materialMark;

    /**
     * 合同的物料主键
     */
    private String contractMaterialId;

    /**
     * 订单中本次供货数量
     */
    private BigDecimal supplyNum;

    /**
     * 项目确认供货数量
     */
    private BigDecimal comfirmSupplyNum;

    /**
     * 对账数量
     */
    private BigDecimal reconciliationNum;

    /**
     * 对账含税金额 
     */
    private BigDecimal reconciliationPrice;

    /**
     * 物料排序 
     */
    private Integer materialSortNum;
}
